package com.example.chamberlainserver.Entry;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@NoArgsConstructor
public class ScheduleAssignment {
    private String id;                // 主键ID
    private Integer userId;           // 用户ID
    private String shiftId;           // 班次ID
    private LocalDate scheduleDate;   // 排班日期
    private String status;            // 状态：assigned, confirmed, cancelled
    private String assignmentType;    // 分配类型：auto, manual, adjustment
    private String notes;             // 备注
    private Integer assignedBy;       // 分配人ID
    private LocalDateTime assignedAt; // 分配时间
    private LocalDateTime createdAt;  // 创建时间
    private LocalDateTime updatedAt;  // 更新时间
    private Integer createdBy;        // 创建人ID
    
    // 非数据库字段，用于关联相关信息
    private transient User user;
    private transient ShiftTime shift;
    private transient User assignedByUser;
    private transient User creator;
}